1. Technical Field
The present invention relates generally to a semiconductor storage system and a controlling method thereof and, more particularly, to a semiconductor storage system controlling the merging of blocks and a controlling method thereof.
2. Related Art
In the recent years, the amount of data utilized by apparatuses has increased with the further development of multimedia technologies. In addition, different types of apparatuses that store multimedia data, other than a computer, have become more widely spread, e.g., a digital camera, a digital camcorder, a digital recorder, etc. As a result, an interest in a nonvolatile storage device that stores the multimedia data has increased. A representative example of such a nonvolatile storage device includes a NAND memory. As is well known in the industry, over the last few years, personal computers (PC) are being released having a solid state drive (SSD) using a NAND memory instead of a hard disk drive (HDD). It is expected that the increasing use of the SSD will rapidly encroach on the HDD market.
Generally, an address mapping method for a memory area of the semiconductor storage system such as a SSD includes a block unit mapping method, a page unit mapping method, and a hybrid mapping method, which uses both the block unit mapping method and the page unit mapping method. The block unit mapping method maps a physical block address and a logical block address. The page mapping method, which is referred to as sector mapping, is a method of mapping a physical page address and a logical sector address by preparing a mapping table in a unit of a page. When page mapping is performed, an actual page address of the NAND memory can be found by searching the mapping table and thereby achieve a high-speed operation. However, a mapping storage capacity that is required in the NAND memory is unavoidably increased due to the large size of the mapping table. The block mapping method, however, can reduce the mapping storage capacity required in comparison with the page mapping method since the block mapping method stores and uses tables corresponding to the number of blocks of the NAND memory in the NAND memory.
However, the block mapping method is inefficient for an overwrite process. The hybrid mapping method basically reduces the mapping storage capacity by using the block mapping method and uses the page mapping method with respect to a buffer block (alternatively, referred to as a log block). Herein, the mapping method that uses the buffer block primarily includes the page mapping method and the hybrid mapping method. For convenience, the hybrid mapping method will be primarily described.
The buffer block mapping method divides the memory block of the memory area into a data block and a buffer block. Data is stored by allocating the buffer block through mapping, preferably to the data block designated according to a logical address.
Therefore, when extra space of the buffer block mapped to the corresponding data block is insufficient in response to a write request of a host, despite the corresponding data block itself having sufficient extra space, a write operation is performed by allocating a new buffer block through a flash translation layer (FTL) algorithm. As such, the performance of block mergence or garbage collection may be deteriorated since a command for merging the data block into the corresponding mapped buffer block is always performed. As a result, more efficient block management is needed.